"use strict";
/*
 * @Author: your name
 * @Date: 2021-04-13 10:12:31
 * @LastEditTime: 2021-04-13 11:11:06
 * @LastEditors: Please set LastEditors
 * @Description: In User Settings Edit
 * @FilePath: \学习笔记\TypeScript笔记\20模块系统.ts
 */
// 模块系统
// 模块术语变更
// "内部模块" 现在称作 "命名空间"; "外部模块" 现在则简称为 "模块"
// 模块在自身的作用域里执行，而不是在全局作用域里;
// 这意味着定义一个模块里的变量，函数，类等等在模块外部是不可见额，除非你明确地使用exprot形式之一到处他们。
// 相反,如果相适应其他模块熬出额变量,函数,类,接口等等地时后,你必须要导入他们,可以使用import形式之一.
// 模块是自声明地; 连个模块之间地挂你是通过在文件级别上使用import和export建立的.
// 如果一个文件不还有顶级import或export声明，那么它的内容被视为全局可见地（因此对模块也是可见的）
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
    for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
exports.__esModule = true;
// =>
// export {userMsg} from './head'
// 或者一个模块可以包裹多个模块，并把他们到处的内容联合在一起通过语法：export * from “module”
__exportStar(require("./demo"), exports);
__exportStar(require("./file"), exports);
__exportStar(require("./head"), exports);
__exportStar(require("./math"), exports);
exports["default"] = {
    a: 1
};
